package entity;

import java.sql.Date;

import com.sun.org.apache.bcel.internal.generic.INSTANCEOF;

import sun.security.jca.GetInstance.Instance;

import negocio.Cliente;
import negocio.Empresa;
import negocio.Localidad;

public class EmpresaBD {

	private int id_empresa;
	private String razon_social;
	private PaisBD pais;
	private String domicilio;
	private LocalidadBD localidad;
	private String pagina_web;
	private String email;
	private Date fecha_alta;
	private String telefono;
	private String fax;
	private String direccion_comercial;
	private String tipo_factura;
	private String observaciones;
	private Date fecha_inhabilitacion;
	private String cuit;
	private String tipo_empresa;
	private int diaConcicliacion;
	
	public EmpresaBD(){}

	public EmpresaBD(Empresa empresa) {
		// TODO Auto-generated constructor stub
		this.id_empresa = empresa.getCodigoEmpresa();
		this.razon_social = empresa.getRazonSocial();
		this.pais = null;
		this.domicilio = empresa.getDomicilio();
		this.localidad = new LocalidadBD(empresa.getLocalidad());
		this.pagina_web = empresa.getPaginaWeb();
		this.email = empresa.getEmail();
		this.fecha_alta = (Date) empresa.getFechaAlta();
		this.telefono = empresa.getTelefono();
		this.fax = empresa.getFax();
		this.direccion_comercial = empresa.getDireccionComercial();
		this.tipo_factura = empresa.getTipoFactura();
		this.observaciones = empresa.getObservaciones();
		this.fecha_inhabilitacion = (Date) empresa.getFechaInhabilitacion();
		this.cuit = empresa.getCuit();
		
		if (empresa instanceof  Cliente){
			this.tipo_empresa = "CLIENTE";
			this.diaConcicliacion = ((Cliente)empresa).getDiaConcicliacion();
		} else {
			this.tipo_empresa = "CARRIER";
		}
		
		
	}

	public int getId_empresa() {
		return id_empresa;
	}

	public void setId_empresa(int id_empresa) {
		this.id_empresa = id_empresa;
	}

	public String getRazon_social() {
		return razon_social;
	}

	public void setRazon_social(String razon_social) {
		this.razon_social = razon_social;
	}

	public PaisBD getPais() {
		return pais;
	}

	public void setPais(PaisBD pais) {
		this.pais = pais;
	}

	public String getDomicilio() {
		return domicilio;
	}

	public void setDomicilio(String domicilio) {
		this.domicilio = domicilio;
	}

	public LocalidadBD getLocalidad() {
		return localidad;
	}

	public void setLocalidad(LocalidadBD localidad) {
		this.localidad = localidad;
	}

	public String getPagina_web() {
		return pagina_web;
	}

	public void setPagina_web(String pagina_web) {
		this.pagina_web = pagina_web;
	}

	public String getEmail() {
		return email;
	}

	public void setEmail(String email) {
		this.email = email;
	}

	public Date getFecha_alta() {
		return fecha_alta;
	}

	public void setFecha_alta(Date fecha_alta) {
		this.fecha_alta = fecha_alta;
	}

	public String getTelefono() {
		return telefono;
	}

	public void setTelefono(String telefono) {
		this.telefono = telefono;
	}

	public String getFax() {
		return fax;
	}

	public void setFax(String fax) {
		this.fax = fax;
	}

	public String getDireccion_comercial() {
		return direccion_comercial;
	}

	public void setDireccion_comercial(String direccion_comercial) {
		this.direccion_comercial = direccion_comercial;
	}

	public String getTipo_factura() {
		return tipo_factura;
	}

	public void setTipo_factura(String tipo_factura) {
		this.tipo_factura = tipo_factura;
	}

	public String getObservaciones() {
		return observaciones;
	}

	public void setObservaciones(String observaciones) {
		this.observaciones = observaciones;
	}

	public Date getFecha_inhabilitacion() {
		return fecha_inhabilitacion;
	}

	public void setFecha_inhabilitacion(Date fecha_inhabilitacion) {
		this.fecha_inhabilitacion = fecha_inhabilitacion;
	}

	public String getCuit() {
		return cuit;
	}

	public void setCuit(String cuit) {
		this.cuit = cuit;
	}

	public String getTipo_empresa() {
		return tipo_empresa;
	}

	public void setTipo_empresa(String tipo_empresa) {
		this.tipo_empresa = tipo_empresa;
	}
	
	
public void setDiaConcicliacion(int diaConcicliacion) {
		this.diaConcicliacion = diaConcicliacion;
	}

	public int getDiaConcicliacion() {
		return diaConcicliacion;
	}

public EmpresaBD getCarrierTest(){
	this.id_empresa=1;
	this.razon_social = "claro";
	this.pais = new PaisBD().getPaisTest();
	this.domicilio = "larrea 1323";
	this.localidad = new LocalidadBD().getLocalidadBDTest();
	this.pagina_web = "www.gooa.com";
	this.email = "adas@a.com";
	fecha_alta = null;
	this.telefono ="32131";
	this.fax = "3123";
	this.direccion_comercial = "larrea 2412";
	this.tipo_factura = "Carrier";
	this.observaciones = "";
	this.fecha_inhabilitacion = null;
	this.cuit = "3232131232";
	this.tipo_empresa = "Carrier";
	return(this);
	}

public EmpresaBD getCarrierTest2(){
	this.id_empresa=2;
	this.razon_social = "Cencosud";
	this.pais = new PaisBD().getPaisTest();
	this.domicilio = "Mitre 1234";
	this.localidad = new LocalidadBD().getLocalidadBDTest();
	this.pagina_web = "www.cenco.com";
	this.email = "ppepe@a.com";
	fecha_alta = null;
	this.telefono ="7646875";
	this.fax = "3123";
	this.direccion_comercial = "mitre 1234";
	this.tipo_factura = "Carrier";
	this.observaciones = "";
	this.fecha_inhabilitacion = null;
	this.cuit = "4569871";
	this.tipo_empresa = "Cliente";
	return(this);
	}
	
}
